package com.sultan.guante.userSystem.domain;




public abstract class UserStatus   implements  UserStatusLogin {
	
public StatusLoginEnum statusEnum ;
	
	public UserStatusLogin getUserStatus(StatusLoginEnum statusLogin){
		
	  switch (statusLogin) {
	case LOGGED: return new UserLogged();
	case LOGGEDOFF: return new UserLoggedOff();
	case LOCKED: return new UserLocked();
	case DISABLED: return new UserDisabled();
		

	default:
		break;
	}
		
		
return null;
	}
	
	
	public void login(Users user) {
		// TODO Auto-generated method stub

	}

	public void logout(Users user) {
		// TODO Auto-generated method stub

	}

	public Boolean isLogged() {
		// TODO Auto-generated method stub
		return false;
	}

	public Boolean isLoggedOff() {
		// TODO Auto-generated method stub
		return false;
	}

	public Boolean isLocked() {
		// TODO Auto-generated method stub
		return false;
	}

	public Boolean isDisabled() {
		// TODO Auto-generated method stub
		return false;
	}

	/**
	  * Returns true if the Object's class name matches this Object's class name.
	  */
	 public final boolean equals(Object obj)
	 {
	   if (this == obj)
	   {
	     return true;
	   }
	   if (obj == null)
	   {
	     return false;
	   }
	   return getClass().getName().equals(obj.getClass().getName());
	 }

	 /**
	  * Returns the hashCode of the Object's Class name because all instances of
	  * this Class are equal.
	  */
	 public final int hashCode()
	 {
	   return getClass().getName().hashCode();
	 }
	}
